package com.example.leetcode;

/**
 * 动态规划 & 递归
 * 每次你可以爬 1 或 2 个台阶
 * 爬到n 为 f(n)  那必然等于f(n-1)+ f(n-2)
 */
public class Demo0070 {

    //动态规划
    public int climbStairs(int n) {
        if (n<=2){
            return n;
        }
        int[] fun=new int[n];
        fun[0]=1;
        fun[1]=2;
        for (int k = 2; k < n; k++) {
            fun[k]=fun[k-1]+fun[k-2];
        }
        return fun[n-1];
    }
}
